package com.sleep.blog.service;

import com.sleep.blog.dao.pojo.SysUser;
import com.sleep.blog.vo.Result;
import com.sleep.blog.vo.params.LoginParam;

/**
 * @author Sleep-6000
 * @date 2021/9/14
 */
public interface LoginService {

    /**
     * 登录
     * @param loginParam 用户名 密码
     * @return token
     */
    Result login(LoginParam loginParam);

    /**
     * 校验 token 合法性
     * @param token token
     * @return SysUser
     */
    SysUser checkToken(String token);

    /**
     * 退出
     * @param token token
     * @return null
     */
    Result logout(String token);

    /**
     * 注册
     * @param loginParam 用户名 密码 昵称
     * @return token
     */
    Result register(LoginParam loginParam);
}
